When data communication is performed between network equipments, an equipment authentication is performed to determine whether the communication correspondent on the other end is valid. For example, the transmitting equipment uses a secret key known only by the transmitting equipment to generate a data packet and transmit the packet. The receiving equipment uses a secret key that the receiving equipment owns or a public key to determine whether the received data packet is the one generated by the transmitting equipment. As a technique for the equipment authentication, an hmac or a technique where a signature is attached to data using a public-key cryptography is known. The hmac is a technique where the hash value of data is found using a shared key to set the value as the authenticator.
In such a technique using a key to generate a data packet, it can be determined that the received data packet has been generated by the transmitting equipment. However, it cannot be found that an eavesdropping by a third party in the middle of the communication has caused the late arrival of the data, or that a third party has repeatedly transmitted absolutely the same data at different times (replay attack).
Thus, a data packet including not only a key but also the time information is generated. Accordingly, even if a third party tries to falsify the time information recorded in the data packet, only a valid transmitting equipment that knows the key can generate a correct authenticator. This can prevent a fraud such as the above-mentioned replay attack or the like.
However, storing time information in every data packet increases the volume of data. This reduces the communication speed or increases the throughput of the memory.
To prevent a fraud such as the replay attack or the like, it can also be considered, instead of storing time information in each packet, that the equipments communicating to each other have clocks precisely time-matched between the clocks in order to communicate to each other based on the time indicated by the clocks. However, it is difficult to implement highly accurate clocks of which times are exactly matched.